/**
 * Copyright (c) 时间, Tal.Ben 袁东昊 (ydonghao2@gmail.com).
 *
 * 版权
 */
package com.talben.soudian.fragment.viewpagerfragment;

import java.io.File;
import java.io.UnsupportedEncodingException;

import org.apache.http.Header;
import org.json.JSONObject;

import android.os.Bundle;
import android.support.annotation.IntegerRes;
import android.support.annotation.Nullable;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.Button;
import android.widget.LinearLayout;
import android.widget.TextView;
import butterknife.ButterKnife;
import butterknife.InjectView;
import cn.sharesdk.framework.Platform;
import cn.sharesdk.framework.ShareSDK;
import cn.sharesdk.framework.Platform.ShareParams;
import cn.sharesdk.onekeyshare.OnekeyShare;
import cn.sharesdk.onekeyshare.ShareContentCustomizeCallback;

import com.loopj.android.http.AsyncHttpResponseHandler;
import com.talben.soudian.AppContext;
import com.talben.soudian.R;
import com.talben.soudian.TDevice;
import com.talben.soudian.api.SouDianAPI;
import com.talben.soudian.api.UrlConnect;
import com.talben.soudian.base.BaseFragment;
import com.talben.soudian.bean.User;
import com.talben.soudian.ui.LoginActivity;
import com.talben.soudian.ui.UIHelper;
import com.talben.soudian.util.ToolShareSDK;

/**
 * @Title: MasterViewPagerFragment.java
 * @Package com.talben.soudian.fragment
 * @Description: TODO(添加描述)
 * @author Tal.Ben
 * @date 2015年5月25日 下午10:13:51
 * @version v1.0
 */
public class MasterViewPagerFragment extends BaseFragment {

	@InjectView(R.id.btn_share_master)
	Button mBtnShareMaster;
	@InjectView(R.id.rl_why_master)
	LinearLayout mLyWhyMaster;
	@InjectView(R.id.rl_how_master)
	LinearLayout mLyHowMaster;
	@InjectView(R.id.tv_master_total_award)
	TextView mTvMasterTotalAward;
	@InjectView(R.id.tv_prentice_number)
	TextView mTvPrenticeNumber;
	@InjectView(R.id.tv_grandson_number)
	TextView mTvGradsonNumber;

	@Override
	public View onCreateView(LayoutInflater inflater,
			@Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
		View view = inflater.inflate(R.layout.fragment_master_main, container,
				false);
		ButterKnife.inject(this, view);
		initView(view);
		return view;
	}
	
	@Override
    public void onViewCreated(View view, Bundle savedInstanceState) {
        super.onViewCreated(view, savedInstanceState);
        if (AppContext.getInstance().isLogin()) {				//登陆
        	if (TDevice.isNetworkReady(getActivity())) {		//注册
            	requestData();
    		} else {
    			AppContext.showToast("你没有链接任何网络，请联网查询");
    		}
		}
    }
	
	

	private void requestData() {
		SouDianAPI.getMasterInfo(mHandler);
	}
	
	private final AsyncHttpResponseHandler mHandler = new AsyncHttpResponseHandler() {

		@Override
		public void onFailure(int arg0, Header[] arg1, byte[] arg2,
				Throwable arg3) {
			try {
				String result = new String(arg2,"utf-8");
				JSONObject resJObj = new JSONObject(result);
				AppContext.showToast(resJObj.getString("error"));
			} catch (Exception e) {
				e.printStackTrace();
			}
            
		}

		@Override
		public void onSuccess(int arg0, Header[] arg1, byte[] arg2) {
			// 处理成功后的动作
			try {
				//保存cookieStore
				//处理Json
                String result = new String(arg2,"utf-8");
                JSONObject resJObj = new JSONObject(result);
                if (resJObj.getString("result").equals("success")) {
                	mTvMasterTotalAward.setText("累计师徒奖励：￥"+resJObj.getString("totalAward"));
                	mTvPrenticeNumber.setText(resJObj.getString("prentice"));
                	mTvGradsonNumber.setText(resJObj.getString("gradson"));
				} else {
					AppContext.getInstance().cleanLoginInfo();
                    hideWaitDialog();
                    AppContext.showToast(resJObj.getString("error"));
				}
			} catch (Exception e) {
				e.printStackTrace();
                onFailure(arg0, arg1, arg2, e);
			}
		}
		
	};

	@Override
	public void initView(View view) {
		mBtnShareMaster.setOnClickListener(this);
		mLyWhyMaster.setOnClickListener(this);
		mLyHowMaster.setOnClickListener(this);
		
	}

	@Override
	public void onClick(View v) {
		final int id = v.getId();
		switch (id) {
		case R.id.btn_share_master:
			if (AppContext.getInstance().getProperty("user.uphone") == null) {
				AppContext.showToast(R.string.unlogin);
	            UIHelper.gotoLoginPage(getActivity());
	            return;
			}
			showShare();
			break;
		case R.id.rl_why_master:
			UIHelper.gotoWhyMasterPage(getActivity());
			break;
		case R.id.rl_how_master:
//			UIHelper.gotoWhyMasterPage(getActivity());
			break;
		default:
			break;
		}
	}

	private void showShare() {
		ShareSDK.initSDK(AppContext.getInstance());
		OnekeyShare oks = new OnekeyShare();
		
		oks.setAddress("ydonghao2@gmail.com");
		// url仅在微信（包括好友和朋友圈）中使用
		oks.setUrl(UrlConnect.SHARE_MASTER);
		/**
		 * title标题，在印象笔记、邮箱、信息、微信（包括好友、朋友圈和收藏）、
		 * 易信（包括好友、朋友圈）、人人网和QQ空间使用，否则可以不提供
		 */
		oks.setTitle(getString(R.string.share));
		/** titleUrl是标题的网络链接，仅在人人网和QQ空间使用，否则可以不提供 */
		oks.setTitleUrl(UrlConnect.SHARE_MASTER);
		// text是分享文本，所有平台都需要这个字段
		oks.setText(getString(R.string.share_content));
		/** imagePath是本地的图片路径，除Linked-In外的所有平台都支持这个字段 */
		oks.setImagePath(AppContext.getInstance().getPackageResourcePath() + File.separator +"logo.png");
		/** imageUrl是图片的网络路径，新浪微博、人人网、QQ空间和Linked-In支持此字段 */
		oks.setImageUrl("http://img.appgo.cn/imgs/sharesdk/content/2013/07/25/1374723172663.jpg");
		/** url在微信（包括好友、朋友圈收藏）和易信（包括好友和朋友圈）中使用，否则可以不提供 */
		oks.setUrl(UrlConnect.SHARE_MASTER);
		/** filePath是待分享应用程序的本地路劲，仅在微信（易信）好友和Dropbox中使用，否则可以不提供 */
		oks.setFilePath(AppContext.getInstance().getPackageResourcePath() + File.separator +"logo.png");
		/** comment是我对这条分享的评论，仅在人人网和QQ空间使用，否则可以不提供 */
		oks.setComment(getString(R.string.share));
		/** site是分享此内容的网站名称，仅在QQ空间使用，否则可以不提供 */
		oks.setSite(getString(R.string.app_name));
		/** siteUrl是分享此内容的网站地址，仅在QQ空间使用，否则可以不提供 */
		oks.setSiteUrl(UrlConnect.SHARE_MASTER);
		/** foursquare分享时的地方名 */
		oks.setVenueName("搜点手机助手");
		/** foursquare分享时的地方描述 */
		oks.setVenueDescription("东莞搜点手机助手科技有限公司!");
		/** 分享地纬度，新浪微博、腾讯微博和foursquare支持此字段 */
		//oks.setLatitude(23.056081f);
		/** 分享地经度，新浪微博、腾讯微博和foursquare支持此字段 */
		//oks.setLongitude(113.385708f);
		oks.disableSSOWhenAuthorize();
		oks.setShareContentCustomizeCallback(new ShareContentCustomizeCallback() {
			public void onShare(Platform platform, ShareParams paramsToShare) {
			}
		});
		// 启动分享GUI
		oks.show(AppContext.getInstance());
	}

}
